//****************************************************************
//  Average.java   Author: Lewis/Loftus
//
//  Demonstrates the use of a while loop, a sentinel value, and a
//  running sum.
//****************************************************************

import java.text.DecimalFormat;
import java.util.Scanner;

public class Average
{
   //-------------------------------------------------------------
   //  Computes the average od a set of values entered by the user.
   //  The running sum is printed as the numbers are entered.
   //-------------------------------------------------------------
   public static void main(String[] args)
   {
      int sum = 0, value, count = 0;
      double average;

      Scanner scan = new Scanner(System.in);
      System.out.println("Enter an integer (0 to quit): ");
      value = scan.nextInt();

      while (value != 0)  //  sentinel value of 0 to terminate loop
      {
         count++;

         sum += value;
         System.out.println("The sum so far is " + sum);

         System.out.println("Enter an integer (0 to quit): ");
         value = scan.nextInt();
      }

      System.out.println();

      if (count == 0)
          System.out.println("No values were entered.");
      else
      {
         average = (double)sum / count;

         DecimalFormat fmt = new DecimalFormat("0.###");
         System.out.println("The average is " + fmt.format(average));
      }
   }
}
